#ifndef __STORE_H__
#define __STORE_H__

#include <string>
#include <vector>
#include <leveldb/db.h>
#include <leveldb/write_batch.h>

namespace nanok {

class Store {
public:
    Store(const std::string& data_dir);
    ~Store();
    bool Create(const std::string& key, const std::string& value);
    bool Get(const std::string& key, std::string* value);
    bool Update(const std::string& key, const std::string& value);
    bool Delete(const std::string& key);
    std::vector<std::string> List(const std::string& prefix);

private:
    leveldb::DB *db_;
};





}

#endif